package com.ruoyi.shenji.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.shenji.domain.TableData;
import com.ruoyi.shenji.domain.Vo.TableDataVo;
import com.ruoyi.shenji.utils.TableTreeSelect;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

public interface TableDataService extends IService<TableData> {
    String getAncestors(TableData tableData, String roleKey);

    String getRoleKey(Long userId);

    List<TableDataVo> listWithAuth(TableData tableData,String roleKey);

    List<TableDataVo> selectList(TableData tableData);

    List<TableData> getByParentId(String id);

    TableData getByName(String name, String roleKey);

    List<TableData> selectTableList(TableData tableData,String roleKey);

    List<TableDataVo> buildTableTree(List<TableDataVo> tables);

    List<TableTreeSelect> buildTableTreeSelect(List<TableDataVo> tableList);

    List<TableTreeSelect> selectTableTreeList(TableData tableData,String roleKey);

    LinkedHashMap<String, Object> getNameByAbbrevList(List<TableData> tableKeyList);
}
